package com.neshai.webapp.entity;

import java.time.LocalDateTime;

import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import lombok.Data;

@Data
@TableName("user")
public class User{

    @TableId(value = "user_id", type = IdType.AUTO)
    private Integer userId;

    private String email;

    private String walletAddress;

    //@TableField 注解用于指定实体类的字段在映射到数据库表时的行为。fill 属性则用于指定字段在插入或更新操作时是否自动填充。FieldFill.INSERT 表示该字段将在插入操作时自动填充。
    @TableField(fill = FieldFill.INSERT)
    private LocalDateTime createdAt;

    private Integer vipLevel;

    private LocalDateTime rechargeTime;

    private LocalDateTime expiryTime;

    //基础版本使用次数
    private Integer usageBasic;

    //高级版本使用次数
    private Integer usagePremium;

    private Long balance;

    //0 表示没有订阅，1表示订阅了，2表示订阅处于取消状态
    private Integer subscriptionStatus;

}
